当我们安装了mysql或者mariadb的时候,一不小心,就把密码给忘记了。这个时候,我们不管怎么尝试密码,都是错误的,都会显示如下错误:

[root@iZ28zkjw87oZ ~]# mysql -uroot -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

这个问题特别的头疼。
但是如果我们用如下方法就可以迎刃而解了。
首先我们先修改配置文件:

vim /etc/my.cnf

然后在mysqld节中增加下面一行代码:

[mysqld]
skip-grant-tables # 这个是要加入的内容

然后重启mysql/mariadb之后,就可以不用密码而直接进去了。
这个时候我们就可以执行命令:

UPDATE mysql.user SET Password=PASSWORD('your password') WHERE User='root';

这样就把密码给修改了。修改之后。然后我们将my.cnf中的这行注释掉:

[mysqld]
#skip-grant-tables

然后重启就可以了。
这样就实现了我们mysql/mariadb的重置密码功能了。


魔王卷子
940 声望33 粉丝

PHP程序员,专注于后端!